package com.ruoyi.web.service;

import java.util.List;
import com.ruoyi.web.domain.UserOrderDetail;

/**
 * 销售详情Service接口
 * 
 * @author ruoyi
 * @date 2025-06-11
 */
public interface IUserOrderDetailService 
{
    /**
     * 查询销售详情
     * 
     * @param id 销售详情主键
     * @return 销售详情
     */
    public UserOrderDetail selectUserOrderDetailById(Long id);

    /**
     * 查询销售详情列表
     * 
     * @param userOrderDetail 销售详情
     * @return 销售详情集合
     */
    public List<UserOrderDetail> selectUserOrderDetailList(UserOrderDetail userOrderDetail);

    /**
     * 新增销售详情
     * 
     * @param userOrderDetail 销售详情
     * @return 结果
     */
    public int insertUserOrderDetail(UserOrderDetail userOrderDetail);

    /**
     * 修改销售详情
     * 
     * @param userOrderDetail 销售详情
     * @return 结果
     */
    public int updateUserOrderDetail(UserOrderDetail userOrderDetail);

    /**
     * 批量删除销售详情
     * 
     * @param ids 需要删除的销售详情主键集合
     * @return 结果
     */
    public int deleteUserOrderDetailByIds(Long[] ids);

    /**
     * 删除销售详情信息
     * 
     * @param id 销售详情主键
     * @return 结果
     */
    public int deleteUserOrderDetailById(Long id);

    /**
     * 根据订单id删除销售详情
     * 
     * @param orderId 订单id
     * @return 结果
     */
    public int deleteUserOrderDetailByOrderId(Long orderId);

    /**
     * 根据订单id批量删除销售详情
     * 
     * @param orderIds 订单id集合
     * @return 结果
     */
    public int deleteUserOrderDetailByOrderIds(Long[] orderIds);

    /**
     * 根据订单id查询销售详情
     * 
     * @param orderIds 订单id集合
     * @return 销售详情集合
     */
    public List<UserOrderDetail> selectUserOrderDetailByOrderIds(Long[] orderIds);

}
